A recent development from the third generation (3G) wireless communications is the long term evolution (LTE) cellular communication standard, sometimes referred to as 4th generation (4G) systems. Both of these technologies are compliant with third generation partnership project (3GPP™) standards. A conventional mobile cellular network is based on a star topology where the central node, referred to as an eNodeB in 3GPP™ parlance, is the cell site and the other nodes wirelessly connected to the central node are subscriber units, referred to as user equipment (UEs) in 3GPP™ parlance. The connection to the cell site is made via a wireless interface and is possible if the UEs are within wireless coverage of the cell.
Various communication nodes/devices are known that are used to support cellular and short range communication. For example, edge routers not only manage a mesh network and communicate with end nodes or mesh routers, but also provide routing into the wider IP network, typically a cellular network or the public internet via a backhaul link. This links the mesh network to the cellular network and routes traffic between the two technologies. A backhaul link can be accomplished by a number of technologies, for example a wired Ethernet connection, WiFi™ link or possibly a cellular technology connection. This results in networks that have to be planned. There is at least one edge router in each mesh cluster.
Mesh router devices are communication devices that communicate using mesh transport technology (typically WiFi™) to either an edge router (often located on the extremities of a cellular network and connected to the wider IP network, typically or the public internet via a backhaul link) or another mesh router. Mesh routers are able to support routing in the mesh network, i.e. they can relay data or traffic from a second node (either an end node or another mesh router) towards the edge router.
End nodes are communication devices that communicate using mesh transport technology (typically WiFi™) to either an edge router or a mesh router. An end node device provides no routing functionality for data from other devices. End node communication devices do not have routing capability and can only operate as ‘leaves’ in the mesh network.
A conventional mobile ad hoc network (also called wireless mesh network) includes a contemporaneous continuous connection between the source and destination nodes. Conventional routing protocols, such as AODV (see RFC 3561) or OLSR (RFC 3626), can be employed. Another class of wireless network architecture exists where node density is low and/or communication range of the nodes is also low, such that a contemporaneous end to end path does not exist between source and destination nodes. Conventional routing protocols, such as the aforementioned AODV and OLSR will not work. However, this does not mean that packets can never be delivered in such networks. Over time, different links come up and down, due to node mobility, and these sporadic contacts can be exploited to move data closer to its intended target. Such ad hoc networks would typically use only short range communications such as WiFi or Bluetooth, with such schemes using, in effect, a ‘store and carry forward’ mechanism. Packets are stored and rely on the movement of the mobile node user to carry the data around the network.
Unlike conventional networks nodes, such ad hoc networks cannot be sure whether a contact will occur in the future that will move the packet towards the intended destination. Thus, data packets must be moved to nodes speculatively in the hope that they encounter the destination node, or at least a node closer to the destination. These networks are therefore termed opportunistic networks.
An aspect that is prevalent in opportunistic networks is that delivery of packets in an opportunistic network has high, and potentially unbounded latency, there is no guarantee a packet can be ultimately delivered. Conventional transport/network layer protocols like TCP/IP cannot work in such networks where latency is high and unpredictable. Timeouts will occur within these protocols and data will be discarded.
Another technique that is commonly used is to replicate the packet and pass the replica on to any encounter node. This leads to so called ‘epidemic routing’, where a packet is spread throughout the network until it reaches its intended destination.
To assist communication networks to provide additional functionality, the concept of bundle protocols has been developed. A bundle protocol has found particular use as an experimental disruption-tolerant networking (DTN) protocol designed for unstable communications networks. Here, it groups data blocks into bundles and transmits them using a store-and-forward technique. Bundle protocols connect multiple subnets into a single network and provide a custody-based retransmission service. It is known that nodes employing bundle protocols may store data for long periods.
A bundle protocol, as defined in RFC 5050 and RFC 4838, was originally developed for space communications. However, it has since been recognised as being applicable to fractured networks, such as those described above. The bundle protocol creates self-contained messages or bundles that are the primary unit of communication. The bundle protocol sits between the application layer and network layer and provides storage functionality to hold bundles until a communication link become available.
FIG. 1 illustrates a layer overview of a known wireless communication system 100 that operates a bundle protocol, whereby one or more low latency links exist between a source node and a destination node when data is passed over one or more forwarding nodes. Using a bundle protocol is key to the operation of delay tolerant networks, as it allows not only transient networks to be connected but also allows different network/transport layers to be used. In transient networks transport control protocol/Internet protocol (TCP/IP) cannot be used in an end-to-end manner, as the communication link times out well before a connection could be made Furthermore, in transient networks, conventional routing protocols will not work either.
In FIG. 1, a low latency link exists between the source node 110 and forwarding node #1 120 and forwarding node #2 130 and destination node 140. Note that conventional transport control protocol/Internet protocol (TCP/IP) can be used between these nodes. Between forwarding node #1 120 and forwarding node #2 130 an intermittent link 126 exists but is also very high latency. Thus, different lower protocol layers are used in this link.
Source node 110 is illustrated as comprising multiple protocol layers, e.g. physical layer, a link layer, a network layer operating with Internet Protocol (IP), a transport layer operating with a Transport Control Protocol (TCP), an application layer and notably a bundle layer 112. When using a bundle protocol layer 112, all the information that is to be sent is bundled in a single data package, which can be stored in store 114 and only transmitted when connectivity to the next bundle hop exists. In this case the bundle is then sent when connectivity 116, 126, 136 becomes available between intermediate nodes in the system, where the intermediate nodes, e.g. forwarding node #1 120 and forwarding node #2 130, may in turn use (or not use) TCP/IP. In order to account for the fact that connectivity 126 and 136 are intermittent, data is delayed and stored at 124 and 134 until this connectivity becomes available.
In this manner, with the use of the bundle protocol, communications is possible within fractured networks, where such networks are termed delay (or disruption) tolerant networks (DTNs), i.e. the repeated introduction of additional delays in delivering the data is deemed acceptable, as the data is delay tolerant.
Even with a use of appropriate protocols, such as the bundle protocol illustrated in FIG. 1, routing around opportunistic DTNs is still inefficient. Thus, often such (opportunistic delay tolerant) networks are not used to send data to a specific node (although as discussed this is possible), but simply to disseminate information within a network. For instance, a user may wish to share a photo that (s)he has taken with members of their social network. In this case, bundle protocol could be used along with simple epidemic routing to get the picture to all members of his/her social network. In effect, rather than node centric routing, an information centric routing mechanism exists, where spreading data around the area is performed and only those who are interested will consume the data themselves e.g. those ‘members’ of his/her social network. This form of data dissemination is often described as ‘publish and subscribed’, and is different to the traditional client/server model.
As previously mentioned low node density results in a lack of contemporaneous end-to-end paths. This increases the node density by adding special nodes which can aggregate traffic within a delay tolerant network and can improve overall performance. Such special nodes are sometimes referred to as ‘throwboxes’.
FIG. 2 illustrates an overview of a wireless communication system 200 comprising block diagram of a known throwbox 234. The known throwbox 234 is similar to other nodes in the network, albeit that it typically also uses low range communications circuitry 238, to transmit or receive 233 short range, e.g. WiFi™ communications, and a memory storage function 236. The known throwbox 234 comprises a controller 237 configured to manage the data in the throwbox 234. For instance, the controller 237 controls transferring data to/from passing communications nodes, such as node #1 210 on path 214 and node #2 passing on path 224. The passing communications nodes may be presented with a list of the available data stored in the throwbox 234 and may be asked to subscribe to, say, a particular communication channel to receive the available data. The controller 237 may also be configured to allow the uploading of data from passing communications nodes too, and then place then in appropriate subscription channels. In this manner, when a passing communications node encounters the throwbox 234 it may upload information onto it or download information from it.
When the wireless communication system 200 of FIG. 2 functions as an opportunistic DTN, data may be propagated through the system using such throwboxes. For example, a passing communication node such as node #1 210 on path 214 encounters the throwbox 234 it may upload information onto it. At a later date a second passing communication node (node #2 220) encounters the throwbox 234 and it queries the throwbox 234 for any data that it might be interested in. In this case the data uploaded from the first communication node (node #1 210) is downloaded. In this example, it is noteworthy that first and second smartphones never encounter each other but data is transferred therebetween through use of the known throwbox 234. Thus, the known throwbox 234 provides a means of increasing the node population and, thus, improving the speed/efficiency of data dissemination, as well as to offer a large store and management function of data.
The inventors of the present invention have identified an improved mechanism for providing data content that is delay tolerant to communication units/end nodes, particularly when located outside of, say, a cellular network, and without real-time access to the cellular network or a wider IP network via a mesh router connected concurrently with an edge router.